1. Field of the Invention
This invention relates generally to computing systems, and, more particularly, to a method and apparatus for extending legacy systems to allow additional transactions over a computer bus.
2. Description of the Related Art
In computer systems, particularly personal computers, it is common practice to have generally standardized devices, subsystems, buses, and/or bridges to exchange signals between computer subsystems. A computer system may include a plurality of such standardized devices, subsystems buses and/or bridges.
FIG. 1 illustrates an exemplary legacy computer system 100. The computer system 100 includes a processor 105, north bridge 110, memory 115, Peripheral Component Interconnect (PCI) bus 125, south bridge 130, AT Attachment (ATA) interface 135 (more commonly known as an Integrated Drive Electronics (IDE) interface) Industry Standard Architecture (ISA) bus 145, input/output controller chip (SuperI/O™) 150, keyboard and mouse controller (KBC) interface, floppy disk controller (FDC) interface, X-bus 155, and BIOS memory 160. It is noted that the north bridge 110 and the south bridge 130 may include only a single chip or a plurality of chips, leading to the collective term “chipset.” It is also noted that other buses, devices, and/or subsystems may be included in the computer system 100 as desired, e.g. caches, modems, parallel or serial interfaces, SCSI interfaces, network interface cards, etc. [“SuperI/O” is a trademark of National Semiconductor Corporation of Santa Clara, Calif.]
The processor 105 is coupled to the north bridge 110. The north bridge 110 provides an interface between the processor 105, the memory 115, and the PCI bus 125. The south bridge 130 provides an interface between the PCI bus 125 and the peripherals, devices, and subsystems coupled to the IDE interface 135, the ISA bus 145, and the X-bus 155. The Super I/O™ chip 150 is coupled to the ISA bus 145.
The north bridge 110 provides communications access between and/or among the processor 105, memory 115, devices coupled to the PCI bus 125, and devices and subsystems coupled to the south bridge 130. Typically, removable peripheral devices are inserted into PCI “slots” (not shown) that connect to the PCI bus 125 to couple to the computer system 100. Alternatively, devices located on a motherboard may be directly connected to the PCI bus 125.
The south bridge 130 provides an interface between the PCI bus 125 and various devices and subsystems, especially legacy devices, such as a modem, a printer, keyboard, mouse, etc., which have generally been coupled to the computer system 110 through the X-bus 155, the ISA bus 145, and, more recently, the IDE interface 135. The south bridge 130 includes the logic necessary to interface the legacy devices to the rest of computer system 100 through the IDE interface 135, the ISA bus 145, and the X-bus 155.
As used in this application, the terms “legacy device” or “legacy subsystem” refer to any bus, bridge, chip or chipset (e.g. processor, north bridge, south bridge), device, or subsystem that has a specification used to define said bus, bridge, chipset, device or subsystem. It is noted that a portion of bus, bridge, chipset, device or subsystem is enough for the “legacy” tag to apply. For example, V.90 modem that couples to the computer system 100 via the ISA bus could be referred to as a legacy ISA modem, or as a legacy V.90 modem.
It is also noted that the age of the technology does not necessarily correlate to bus, bridge, chipset, device or subsystem, having the legacy tag. It is enough that at least a portion of the specification for the bus, bridge, chipset, device or subsystem be defined well enough for interoperability with similarly defined buses, bridges, chipsets, devices or subsystems.
One problem with legacy buses, bridges, chips, devices and subsystems is that their specifications often preclude expansion or improvement in at least one way. For each legacy bus, bridge, chipset, device or subsystem certain improvements to the design and use of that legacy bus, bridge, chipset, device or subsystem may be unavailable. The usual design route in most cases is to replace the legacy technology with different technology, which may be newer or “improved” in some way.
FIG. 2 illustrates an exemplary computer system 200 that includes a processor 205, north bridge 210, memory 115, Advanced Graphics Port (AGP) memory 220, PCI bus 125, south bridge 230, IDE interface 135, Universal Serial Bus (USB) interface 240, Low Pin Count (LPC) bus 245, Super I/O™250, KBC, FDC, and BIOS memory 260.
The processor 205 is coupled to the north bridge 210. The north bridge 210 provides an interface between the processor 205, the memory 115, the AGP memory 220, and the PCI bus 125. The south bridge 230 provides an interface between the PCI bus 125 and peripherals, devices, and subsystems coupled to the IDE interface 135, the USB interface 240, and the LPC bus 245. The Super I/O™ chip 250 and the BIOS memory 260 are shown coupled to the LPC bus 245.
The north bridge 210 provides communications access between and/or among the processor 205, memory 115, AGP memory 220, devices coupled to PCI bus 125, and devices and subsystems coupled to the south bridge 230. The south bridge 230 provides an interface between the PCI bus 125 and various devices and subsystems coupled to the computer system 200 through the IDE interface 135, the USB interface 240, and the LPC bus 245.
Although several newer or improved technologies are present in computer system 200 that are not in the computer system 100, those different technologies now represent legacy technology themselves. The present invention is directed to overcoming, or at least reducing the effects of, using one or more of the legacy technologies in computer systems such as the computer system 200 or improvements thereof.